package com.jackie.coupon.template.service;

import com.jackie.coupon.template.api.beans.CouponTemplateInfo;

import java.util.Collection;
import java.util.Map;

/**
 * CouponTemplateService
 *
 * @author Jackie Hou
 * @date 2023/11/16 13:44
 * @version 1.0
 */
public interface CouponTemplateService {

    /**
     * 创建优惠券模板
     * @param request
     * @return
     */
    CouponTemplateInfo createTemplate(CouponTemplateInfo request);

    /**
     * 通过模板Id查询优惠券模板
     * @param id
     * @return
     */
    CouponTemplateInfo loadTemplateInfo(Long id);

    /**
     * 克隆
     * @param templateId
     * @return
     */
    CouponTemplateInfo cloneTemplate(Long templateId);


//    PagedCouponTemplateInfo search(TemplateSearchParams request);

    /**
     * 删除券模板
     * @param id
     */
    void deleteTemplate(Long id);

    /**
     * 批量读取
     * @param ids
     * @return
     */
    Map<Long, CouponTemplateInfo> getTemplateInfoMap(Collection<Long> ids);
}
